"""
登录页面
"""
from selenium.webdriver.common.by import By

from base.base_page import BasePage


class LoginPage(BasePage):
    """
    登录页面
    """
    def __init__(self):
        super().__init__(driver_type='web')
        # 元素定位用户名框
        self.username = By.ID, 'username'
        # 元素定位密码框
        self.password = By.ID, 'password'
        # 元素定位验证码框
        self.code = By.ID, 'verify_code'
        # 元素定位登录按钮
        self.login_btn = By.NAME, 'sbtbutton'

    def login_page(self, name, pwd, code):
        """
        登录操作
        :param name: 用户名
        :param pwd: 密码
        :param code: 验证码
        """
        self.input_element(self.find_element_method(self.username), name)
        self.input_element(self.find_element_method(self.password), pwd)
        self.input_element(self.find_element_method(self.code), code)
        self.click_element(self.find_element_method(self.login_btn))

    def username_page(self, name):
        """
        输入用户名方法
        :param name:
        """
        self.input_element(self.find_element_method(self.username), name)

    def password_page(self, pwd):
        """
        输入密码方法
        :param pwd:
        """
        self.input_element(self.find_element_method(self.password), pwd)

    def code_page(self, code):
        """
        输入验证码方法
        :param code:
        """
        self.input_element(self.find_element_method(self.code), code)

    def login_ptn_page(self):
        """
        点击登录按钮方法
        """
        self.click_element(self.find_element_method(self.login_btn))
